#include<bits/stdc++.h> 
using namespace std;
//	在计算机内存的幕后，颜色总是被说成是每个像素的24比特的信息系列。在一幅图像中，具有最
//	大比例面积的颜色被称为主导色。一个严格意义上的主导颜色占据了总面积的一半以上。现在给
//	定一个分辨率为M乘N的图像（例如800×600），你应该指出严格意义上的主导颜色。
//1.每个输入包含一个测试用例，每个测试用例，第一行包括2个正整数M≤800，N≤600，分别表示
//	图片的分辨率。
//2.然后跟着N行，每行M个范围在[0,2^24)的数字。
//3.对于每个测试用例，输出主导色。
//4.桶的思想
//我不知道别的做法怎么样，反正自己做的时候首先考虑的是性能的事情，由于unordered_map的读
//更快，所以我选择用它来存储映射。简单来说就是这个数字如果第一次出现，就建立其与1的映射
//否则，该数的个数+1。然后我还在存入的时候直接进行了找最大值的操作，使得存完就立马能出
//结果，而不用存完再遍历。 
int main(){
	int M, N;
	cin>>M>>N;
	unordered_map<int, int> mp;
	int max_ = 0;
	int max_t = -1;
	for(int i =0;i<N;i++){
		for(int j = 0;j<M;j++){
			int t;
			scanf("%d", &t);
			if(mp.find(t)==mp.end()){
				mp[t] = 1;
			}
			else mp[t] = mp[t] + 1;
			if(mp[t]>max_){
				max_ = mp[t];
				max_t = t;
			}
		}	
	}
	cout<<max_t<<endl;
	return 0;
} 